|
Menüeintrag |
---|
Surface → Blend Curve |
Arbeitsbereich |
Surface |
Standardtastenkürzel |
Keiner |
Eingeführt in Version |
0.21 |
Siehe auch |
Keiner |
Surface Blend Curve Erzeugt eine Bezier Kurve zwischen zwei Kanten, mit der gewünschten Stetigkeit.
Die Basisgeometrie kann zu Kurven die mit dem Draft Workbench oder dem Sketcher Workbench erzeugt wurden gehören, kann aber auch zu festen Objekten die mit dem Part Workbench erzeugt wurden, gehören.
Flächen Übergangsurve die 2 Kanten mit G3 Kontinuität verbindet. Das orange Polygon repräsentiert die Kontrollpunkte. Der Kamm der Kurve (von Curves addon) ist an den Kontaktpunkten glatt.
Eine Flächen Übergangskurve wird von der Basisklasse Part Feature (Part::Feature
durch die Part::Spline
Unterklasse), abgeleitet, deshalb verwendet sie die Eigenschaften der Letzteren.
Zusätzlich zu den in Part Feature beschriebenen Eigenschaften, hat die Oberflächen Übergangskurve im Eigenschaften Editor folgende Eigenschaften.
Übergangskurve
LinkSub
): Erste Eingangskante.Integer
): Grad der Stetigkeit.Float
): Normalisierter Parameter entlang der Kante; von 0.0
(Kantenstart) bis 1.0
(Kantenende).Float
): Länge der Tangente.LinkSub
): Zweite Eingangskante..Integer
): Grad der StetigkeitFloat
): Normalisierter Parameter entlang der Kante; von 0.0
(Kantenstart) bis 1.0
(Kantenende).Float
): Länge der Tangente.
Basis
Bool
): Voreingestellt ist false
; falls auf true
gesetzt werden die Kontrollpunkte der Kurve überlagert dargestellt.
Siehe auch: FreeCAD Basis Scripten.
Das Werkzeug Übergangskurve kann in Makros und von der Python-Konsole aus zum Einfügen von Surface::FeatureBlendCurve
-Objekten verwendet werden.
Startkante
und Endkante
Eigenschaften des Objektes zugeordnet werden.import FreeCAD as App
import Draft
doc = App.newDocument()
points1 = [App.Vector(-20, -20, 0), App.Vector(-20, -8, 0), App.Vector(-17, 7, 0), App.Vector(-18, 25, 0)]
obj1 = Draft.make_bspline(points1)
points2 = [App.Vector(60, 26, 0), App.Vector(37, 4, 0), App.Vector(33, -20, 0)]
obj2 = Draft.make_bspline(points2)
doc.recompute()
bcurve = doc.addObject("Surface::FeatureBlendCurve","BlendCurve")
bcurve.StartEdge = (obj1, 'Edge1')
bcurve.EndEdge = (obj2, 'Edge1')
bcurve.EndParameter = 1.00
bcurve.StartSize = -5.00
bcurve.EndSize = -5.00
doc.recompute()